/*
 * LZ78.h
 *
 *  Created on: Jun 10, 2014
 *      Author: carlos
 */

#ifndef LZ78_H_
#define LZ78_H_

#include <string>
#include "../ICompresor.h"
#include <iostream>
#include "../FileReader.h"
#include "../FileWritter.h"
using namespace std;

class LZ78: public ICompresor {
public:
	LZ78();
	virtual void compimir(string pathSource,string pathDest);
	virtual void descompimir(string pathSource,string pathDest);
	virtual ~LZ78();
	static int cantBits(int tamanoTabla){
		if(tamanoTabla<=256){
			return 8;
		}
		if(tamanoTabla<=512){
			return 9;
		}
		if(tamanoTabla<=1014){
			return 10;
		}
	}
};

#endif /* LZ78_H_ */
